=begin pod

=TITLE role QuantHash

=SUBTITLE Collection of objects represented as hash keys

    role QuantHash does Associative { }

A C<QuantHash> represents a set of objects, represented as the keys of a
C<Hash>. When asked to behave as a list it ignores its C<.values> and
returns only C<.keys> (possibly replicated by weight in the case of bag
types). For any C<QuantHash>, the C<.total> methods returns the current
sum of the values.

All standard QuantHash containers have a default value that is false
(such as C<0> or C<''> or C<Nil> or C<Bool::False>), and keep around only those
entries with non-default values, automatically deleting any entry if its
value goes to that (false) default value.

=end pod

# vim: expandtab softtabstop=4 shiftwidth=4 ft=perl6
